package com.tinusgraglin.enclusiv.datalayer

import java.io.Serializable

data class BasicUserProfile (
    val id: Long,
    val name: String,
    val signature: String?,
)

data class BasicUserProfileWithEmail (
    val id: Long,
    val name: String,
    val email: String,
    val signature: String?,
)

data class ArticleStats (
    val viewers: Int,
    val likes: Int,
    val collects: Int
) : Serializable

data class BasicArticleProfile (
    val id: Long,
    val title: String,

    val authorId: Long,

    val author: BasicUserProfileWithEmail,

    val article: String,

    val imageIds: List<Long>,

    val stats: ArticleStats
)

data class EditedArticle(
    val authorId: Long,
    val title: String,
    val content: String,
    val imageIds: List<Long>
): Serializable

data class UserArticleStats (val like: Boolean, val collect: Boolean): Serializable

data class ShowedArticleProfile(
    val id: Long,
    val title: String,
    val authorName: String,
    val authorId: Long,
    val authorProfileImgUrl: String,
    val contentSegments: List<String>,
    val contentCombined: String,
    val imageUrls: List<String>,
    val articleStats: ArticleStats,
    val userArticleStats: UserArticleStats? = null
) : Serializable
